package sz.szsmk.citizencard.mvp.contract;

import sz.szsmk.citizencard.model.network.bean.response.PowerCheckOrderRes;
import sz.szsmk.citizencard.model.network.bean.response.PowerGetMac2Res;
import sz.szsmk.citizencard.model.network.bean.response.PowerRechargeRes;
import sz.szsmk.citizencard.ui.base.IBaseContact;

/**
 * Copyright (c)2018
 * author: zdh
 * created on: 2018/5/22 15:42
 * description:
 */
public interface IPowerContract {

    interface IPowerPresenter<T extends IBaseContact.IBaseView>
            extends IBaseContact.IBasePresenter {
        void checkOrder(String s, String no, String cardNo, String accesstoken);

        void powerRecharge(String access_token, String cardNo, int mode, int tradeMoney, String psd, String s);

        void powerGetMac2(String access_token, String arithIndex, String asn, String cardNo, int cardOldBal, String cardTradeNo, String cardType, String keyVersion, String mac1, String orderNo, String rndnumber2, int transMoney);
    }

    interface IPowerView extends IBaseContact.IBaseView {

        void checkOrderSucc(PowerCheckOrderRes response);

        void checkOrderFail(String message);

        void powerRechargeSucc(PowerRechargeRes response);

        void powerRechargeFail(String message);

        void powerGetMac2Fail(String message);

        void powerGetMac2Succ(PowerGetMac2Res response);
    }


}
